Copyright: Mp3BookHelper ©2002


Overview

There are many programs available which are designed to make living with MP3 files easier, including ID3 tag editors and playlist generators. After spending several months listening to "Books on Tape" in MP3 format, though, it seemed to me that none of these other utilities was meeting my needs - so we wrote Our own.

Program makes simultaneous tests of CRC32 (for SFV) MD5 (for PAR) checksums for MP3 files. Fast test for completeness and correct size of mp3 files based on information from SFV and PAR checksum files.

This program provides rapid ID3v1 and ID3v2 tags editing and file renaming specific to audiobooks. Edit ID3 tags easily and in bulk using Variables. This is a bit different for audiobooks than for music; for audiobooks we're generally not so interested in the details of the "track name" tag (although having one is good), but we are interested in the others. But if you want something extra use manual One By One editing or Export/Import Tags to and from CSV (Comma - Separated - Values) text file.

Allow files to be renamed in bulk easily, including access to sequential numbering and to the ID3 tags all could be done using VariablesIf you made a mistake you are able to "Undo file rename".

Generate WinAmp-compatible playlists (M3U files) , breaking the lists into sections either based on cumulative file size (in case one is loading to a Rio) or on play time (in case one is recording to tape),  Information (NFO) file, Simple File Verify (SFV) Checksum and parity archive (PAR) files.

Play your mp3 files in Winamp while editing Tags. Auto pause and resume Winamp when renaming or updating files. Jump to last 30 seconds of file for quick spot testing of recording. You need Winamp http://www.winamp.com to be installed separately for this feature to work. For Winamp 3 Winamp 2.x Plugin Manager reqired http://members.telocity.com/~schweitn/wa3/wa2mgr/index.html

And You get all this and even more for FREE!

Support and Feedback: http://mp3bookhelper.sourceforge.net/

If you would like to receive information about new product versions join the mp3bookhelper-news@lists.sourceforge.net mailing list. You can join it by visiting web site.


Features

•	Fast test for completeness and correct size of mp3 files based on information from SFV and PAR/P?? checksum files

•	Simultaneous tests of CRC32 (for SFV) MD5 (for PAR) checksums for MP3 files

•	Batch and manual editing of ID3v1 and ID3v2 tags

•	Batch renaming of MP3 files. Ability to construct file names using sequential numbering and ID3 tags

•	Play mp3 files in Winamp. Auto Pause and Resume when renaming or updating files.

•	Generation of the Winamp-compatible playlists (M3U files)

•	Generation of the Simple File Verify (SFV) Checksum files

•	Creation of the Parity archive (PAR) data recovery files

•	Generation of the text file with information about the audiobook, i.e., an NFO file

•	Drag & Drop support for opening files

•	Preview mode in bulk tags editing and renaming

•	If you made a mistake you are able to "Undo file rename"

•	Persistence of the recently used Masks and other data in .ini file

•	Ability to convert ID3v1.1 to ID3v2 tags for all files with one click

•	Swap tag fields with one click

•	Export/Import ID3 tags and file names to CSV (Comma - Separated - Values) text files.

•	Useful filter in file view: 'Loaded', 'Loaded and Missing', 'Missing Only', 'Corrupted only'

•	In file view show if file was truncated or has extra data in comparison to information from PAR/SFV

•	WinAmp control allow to jump to last 30 seconds of file for quick spot testing of recording

•	Could start external text/.nfo editor for created NFO files

•	Open all files from selected folder

•	Rename/Move currently selected folder

•	Open Source in Borland Delphi (Pascal)


Revision History

Version 2.2.8

- PAR Creation

- Added support for WinAmp 3 using Winamp 2.x Plugin Manager

    http://members.telocity.com/~schweitn/wa3/wa2mgr/index.html

- Added Shell Context Menu

- Fixed annoying SetTag and NFO fields reset

- Now could remove NFO and SFV files using Popup Menu

- Relaxed "Another action not finished" restrictions

- Made Multi Directory support for tested files database (.sfvt)

- Added variables: $D <Folder>, <Directory> and $P, <Path>

- Added <EncVBR>, <NowDate>, <NowTime>, <FilesDate> and <FilesTime> to NFO template

- Author/Artist and Album/Book Tags could use variables.

- Added Minimize to trayIcon

- Made single instance run. To start second instance run with -S or use menu

- Added Big Icons ToolBar

- Win XP build

- PAR/SFV Creation in background Queue

Version 2.2.7

- Improved PAR(md5) test speed

- Added MP3 file information buffer to speedup switch between pages

- Added tested files database (file .sfvt) to avoid double testing

- Added Custom NFO Template to NFO style selection

- Added Text Editor/Viewer for NFO/TXT files

- Added easy to read variables:

   <Count>, <Total>, <Title>, <Album>, <Book>, <File>, <Artist>, <Author>

   <Track#>, <Genre>, <Year>, <Comment>, <ReadBy>, <Composer>

- Added three state sort by all columns: Normal, Smart and Reverse

- Added Options SmartSort Ignore Space and SmartSort Ignore Case

- Added Recent folders and Font Selection

- Added MP3 Info page

Version 2.2.6

- Play mp3 files in Winamp while editing Tags

- Auto Pause and resume Winamp when renaming or updating files.

- Winamp control allow to jump to last 30 seconds of file for quick spot testing of recording

- Simultaneous tests of CRC32 (for SFV) MD5 (for PAR) checksums for MP3 files

- Fast test for completeness and correct size of mp3 files based on information from SFV and PAR/P?? checksum files

- If you made a mistake you are able to "Undo file rename"

- Useful filter in file view: 'Loaded', 'Loaded and Missing', 'Missing Only', 'Corrupted only'

- Could start external text/.nfo editor for created NFO files

- Configurable styles of NFO files

- Find max file name length and show warnings for files (not only mp3) longer than specified length. Useful for Writing to CD

- Correction to MaxFileNameLength calulation, now it does not include extension.

- Fixed all major win98/me compatibility

Version 2.2.5

- Added file CRC and Size test based on information from SFV

- Added missing files guess based on files sequential numbers

- Improved Rename Folder now it is actualy Move Folder

- Improved playlists creation

- More options in NFO file creation

- Added Warning: Smart sort operation by file name may be required

- Fix, ToolBar color to be 256

- Fix, File rename operation do not update file tags

- Improved Error handling in case of bad mp3 files.

Version 2.2.4

- Added installer.

- Added delete previous NFO & SFV file to the Recycle Bin

- Added Windows explorer Directory context menu Association

- Fixes in "Show mask help" Windows and renamed to $variables

- Added ToolBar

- Added predefined "Swap Tag Fields"

- Added Folder rename

- Added Stop/Cancel Current operation

- Added Smart sort file names with numbers

   "file 2.mp3" would be before "file 10.mp3"

Version 2.2.3

- Added Import/Export Tags from text file

- Cleanup tag creation page for easy understanding

- Move Copy and Remove tags to Menu

- Added characters count to "Current mask yields"

- Major improvements to Edit file tag for One by One editing

- Now you could disable/enable "Reposting Rules",

  "Posting Plan" and "Description" generation in NFO

- Added copy Tag v2 to v1 that will use SmartTrim if enabled

- Fixed bug in m3u generation. Error message is not generated

- NFO and SFV will ask to conform file overwrite if one exists

  and name generated automatically. (If Ask XXX file name disabled)

- "Ask NFO file name" and "Ask SFV file name" are not only in options but

  Could be changed from Menu

- Added "Swap ID3 Tag Fields" function

- Added sort arrow to listview column header when sorted

Version 2.2.2

- Made it faster by preventing excessive redraws of ListViews

- Fix Open Directory problems

- Added persistence to NFO drop downs:

    MediaSource, MediaType,  Condition, RippedWith, EncodedWith

- Fix for EncodedWith detection for LAME

- Added key F2 "Apply All Tags"

- Directory name pops up when entering the Book/album title and Author field.

  If it has -(minus) than it makes two fields first Author and after - Book

  if not the same name go to Author and Book. Will add Regular Expression in next version

- Fixed $F to remove extension

Version 2.2.1

- Fixed GUI element positioning

- Progress indicator now have Time elapsed and remaining

- Directory name extraction:

  Edit Box Book/Album - show distinct Albums from ID3v1 and ID3v2

   and if empty Extract from Directory name

  Edit Box Author/Artist - show distinct Artist from ID3v1 and ID3v2

   and if empty Extract from Directory name

  Directory name format for extraction:

     Artist Name - Book Title

Version 2.2.0

- Added ReadBy as Composer in ID3v2

- New Mask $R - Read By (from ID3v2)

- Added 'View/Edit All tags' Panel like in Multi-Tag

- Added 'Preview' button to see how tags will look.

- All Edit Boxes in tags are now List Boxes so you could select different possible values

  from Existing tags, File or Directory names..... See how it works.

  Edit Box File Name - show recently used Masks for File Names

  Edit Box Track Title - show recently used Masks for Track Title

  Edit Box Book/Album - show distinct Albums from ID3v1 and ID3v2

  Edit Box Author/Artist - show distinct Artist from ID3v1 and ID3v2

  Edit Box Year - show distinct Years from ID3v1 and ID3v2

  Edit Box Comment - show distinct Comments from ID3v1 and ID3v2 as well recently used Masks

  Edit Box Read by - show distinct Composers from ID3v2 and Extract from Comments

      'read by', 'narrated by', 'reader', 'readby', 'rdr', 'rd ', 'narrated' and 'narrator'

- Store Window Position in INI file

- Additional window 'Select Directory'

- Added SFV or NFO files extensions if one is not supplied in dialog.

- Added $0 mask Fill the same size as counter using 0 or see options

- Added Configuration options, persistent in .ini file

- File name mask for NFO, SFV in options.

  This masks are resolved base on first file ($I=1) ID3v2 tag if not empty otherwise based

  on ID3v1 tag information.

- You could change file extension in FileMask now

  Just add .Mp3 or .nFo if you don't like lowercase.

  Last . (Dot) will not remove extension from file!

- Improved Preview of Current Mask. Selecting different mask will

  show what will happen to this file "Current mask yields:".

  If View/Edit All selected all other field would be applied but shown only selected.

  Truncated fields/tags would be in red! And yields label would Red if any tag truncated.

- Improved rename algorithm to check for conflict with existing files other than in

  list to be renamed.

- Set, Copy, Remove Tags and Generate SFV now runs in different Thread so main window will

  not freeze.

- If MaxDuration or MaxSize = 0 then no limitations to Playlist creation.

- Before making tag or renaming files all files in list would be cheeked for write access.

  Error message "Close file in another application and start again." would be displayed

  and action cancelled. This could happen if you listening to mp3 and at the same time

  Added the tags.

- New feature SmartTrim for shortening Tags and File name within a given limit.

  This is how it works: Remove '  ' (Double spaces), Remove 'The' and finally Spaces.

  If result is trimmed then it would be shown Blue in 'mask yields:' if truncated then Red.

Version 2.1.2

- (v2.1b) Fixed mixed display of size and duration in Files tab

- Corrections do display of NFO tab for small size Font Windows Display settings.

- Fixed proportional resizing blocks in NFO page.

- Fixed temporary file name during rename operation to avoid duplicate names.

    Would be FileName+$I+TMP+Random(99999)

- NOT Fixed Using the Copy v1 -> v2 button sometimes skips the first file.

Version 2.1

- Fixed count more than 255 file  For v2 OK!

  No count for track# for ID3v1 if more than 255 files.

- Added Set Track# Empty for ID3v1 and other changes.

- Added mask:

  $l   Track counter (starts from 0) ($L) not zero tabbed

  $i - Track counter (starts from 1) ($I) not zero tabbed

  $k - Track number ID3($K) Not formatted, Not zero tabbed

- Added Mask for ID3v2 Track#

- The dialog boxes for saving NFO and SFV files

  Have All files|*.*

- No 30 char limitations for ID3v2  tags.

- File rename bug fixed.

  The file renaming scheme used to have the potential for an infinite loop;

  since it tries to make sure names are unique, if the user assigned names without

  a counter it would keep looping.

- Relative path name support in m3u

  If you save m3u not in the same directory as mp3 relative path would be used as in WinAmp.

- Open/select  m3u file as well as open mp3 files.

- Info Number of files, Size and Total Duration inside status bar.

- Mask preview would be Red if truncated (30 char for ID3v1 tags).

- Encoder in NFO is a guess audio encoder based on mp3 files.

Version 2.0

- ID3v2 tags support.

- Uses new library for mp3 handling.

- New Remove Tag button.

- Minor UI cleanup.

- Added "Total MP3 Size" to NFO

- Duration in NFO now in hh:mm format

- "Encoded At" is a list if files are different

- Do not store file path in m3u.

- Added new Masks

  $2 - 2 chars from Title;

       Fellowship of the Ring -> FR

  $4 - 4 chars from Author and Title;

       JRR Tolkien - Fellowship of the Ring -> JTFR

  $L - Track counter (starts from 0)

Credits:

  Originally Created by Tim Meneely.

  Since v2.0 maintenance by https://sourceforge.net/users/vlads/

Version 1.1

- Added Simple File Verify (SFV) Checksum files creation.

Version 1.0

February 20, 2001: General update:

- Added file renaming capability. This has access to all the ID3 tags, as well as

sequential numbering and total number of tracks.

- Added the ability to sort the tag grid by clicking on the columns. This was a

pain for some programming reasons, but became desirable with the file renaming.

- In the "Menu - Select File" option, started saving the most recently used

directory from session to session. (I didn't think of this initially because I

almost always use Explorer's drag-and-drop function to get files).

February 16, 2001: General update:

-

 Fixed a bug - if you loaded some MP3's without ID3 tags set, there was some

interaction where setting the tag for one file set supposedly non-affected tags

in other files. This was typically benign, since you typically set all the tags

anyway, but it was alarming since it was a side-effect.

- Accepts a directory dropped onto the form, and recursively processes everything

below it.

- Displays total time in hours.

- Double-clicking on a row on the Tag-Edit form lets you edit the tags of one track.

- Added variable mask entry capability for the track name and the comment. If the

entry includes a mask variable the actual value will be substituted when the tag

is assigned, within the 30 character length restriction.

Variables available: $I - Track counter (starts from 1); $N - Number of tracks total; $T - Track Name;

$B - Book / Album Name; $F - File Name; $A - Author / Artist; $K - Track number;

$G - Genre; $Y - Year; $C - Comment

-Added NFO file generation, at least as a first attempt.

February 8, 2001: Web site established:

- Incorporated more complete (although still crude and non-standard) help.

February 7, 2001: Interim bug-fix release:

- Incorporated checking of ID3 tag length, so that one cannot type a tag which

is too long.

- Incorporated ability to edit the prefix of the track name, so it can be

abreviated intelligently by the user.

- Made handling of non-standard "Genre" tags more graceful; the first version

would stop reading the files with a non-descriptive error, now it just acts as

if the Genre is not set, and does not change Genre unless the user sets it.

February 2, 2001:

- Initial release; posted to alt.binaries.sounds.utilities for the use of the folks in the audiobooks groups.


Editing in bulk
Batch tags editing

Select the files to edit using "File - Select Files" or drag-and-drop from Windows Explorer (anywhere onto the form), bring all the files for a book into the program.

Click the tab labeled "Tags" near the top left of the screen to select the tag editing tabsheet.

Sort your files in order you want them to be played (enumerated). Click on column header to sort by this column. Column header icon indicates state of last sort operation: Normal, Smart and Reverse Sort. By default loaded files are sorted by name. If you file names have a numbers greater then 9 and there are no 0 in front for decade then your files may be sorted incorrectly by player and Mp3BookHelper. Use ‘Smart sort file names’ in this case "file 2.mp3" would be before "file 10.mp3".

Use the "Select Tag" combo box to pick which tag you want to edit (i.e., replace), and enter the new value in the edit box below it. For tags other than "Track Title" and "Track" you may then simply press the "Set for All" button. NOTE: There's no undo, and no confirmation - the tags get set when you push that button. "Preview" button allows you to preview tags and file name changes for all files before actually applying this changes to files.

There are two sets of buttons “Preview” and "Set for All". Second row is enabled when “View/Edit all tags” is checked and will set all selected Tags not only the one selected in "Select Tag" combo box. Masks that use ID3 Tag variables ($A, $B…) will produce different strings for setting all tags and only one tag.

"Current mask yields" shows result for currently selected tag and in braces number of characters in this tag. Result depends on current cursor position in “Multiple Tags” frame or in “Selected tag” edit box.

Order in which multiple tags are set is following: Album, Artist, Composer(ID3v1) (ReadBy), Track#, Year, Genre, Comment, Track Title, File Renamed.

Keep in mind that in ID3v1 tags mode you are limited to a maximum number of characters for each tag field: Title, Artist and Album - max. 30 characters, Year - max. 4 characters, Comment - max. 28 characters.


One by one
Editing tags manually one by one

To edit the tags of one file manually double-clicking on a row on the Tag-Edit form or select from menu ‘Tag’, ‘Edit file tag’. New form would be opened and you would be able to rename file or change selected in main form tags ID3v1 or ID3v2.

‘Save’ changes of selected file and move to next or previous file in list if options in ‘Save and:’ selected. ‘Save’ button is [Enter] on keyboard.

'Cancel' command will not save tags for the last file and will close this window.

You could move to any file without changes using arrow buttons or using ‘File#’ dropdown.


Tag Editing Variables

To set ID3 tags “Artist”, “Album”, "Track Title", "Track#" and "Comment" or "File name" you can use special variables to make these tags more useful and easy to set.

Available variables include:

•	$I - Track counter (starts from 1)

Synonym: <Count>

•	$N - Number of tracks total

Synonym: <Total>

•	$T - Track Name (ID3 Tag)

Synonym: <Title>

•	$B - Book / Album Name (ID3 Tag)

Synonyms: <Album>, <Book>

•	$F - File Name

Synonym: <File>

•	$A - Author / Artist (ID3 Tag)

Synonyms: <Artist>, <Author>

•	$K - Track number (ID3 Tag)

•	$k - Track number (ID3 Tag)($K) Not formatted, Not zero tabbed

Synonym: <Track#>

•	$G - Genre (ID3 Tag)

Synonym: <Genre>

•	$Y - Year (ID3 Tag)

Synonym: <Year>

•	$C - Comment (ID3 Tag)

Synonym: <Comment>

•	$R - Read By (Composer from ID3v2)

Synonyms: <ReadBy>, <Composer>

•	$2 - 2 chars from Album (Book Title)

Synonyms: ${2B}, <2Book>, <2Album>

Example: Title ‘Fellowship of the Ring’ produce ‘FR’

•	$4 - 4 chars from Author and Title;

Synonyms: ${4AB}, <4AB>

Example: Author Title ‘JRR Tolkien’, ’ Fellowship of the Ring’ produce ‘JTFR’

•	${2A} - 2 chars from Author

Synonyms: <2Author>, <2Artist>

Example: Author ‘JRR Tolkien’ produce ‘JT’

•	$L - Track counter (starts from 0)

Synonym: <Count0>

•	$l - Track counter (starts from 0) ($L) not zero tabbed

•	$i - Track counter (starts from 1) ($I) not zero tabbed

•	$0 - Fill the same size as counter using 0 or see options

•	$D - Folder Name

Synonyms: <Folder>, <Directory>

•	$P - Full Folder Path

Synonym: <Path>

Advance variable useful for NFO generation:

•	<EncBr> <EncHz> <EncMode> <EncKHz>? <EncVBR>

•	<FileSize> <FileSizeKb> <FileSizeB> <FileSizeMB>

•	<Duration> <DurationMin> <DurationSec> <DurationHHMM> <DurationHHMMSS>

•	<NowDate>, <NowTime>, <FilesDate> and <FilesTime>

•	<SR#> or <SL#> String Format Left or Right justified, where # is width of the the resulting string for next Variable.

Example: <SR40>(<Album>) or  <SL30><Album>


Export/Import ID3-tags to CSV

With ‘Save tags to file’ functionality you can export your Mp3 files information to CSV (Comma - Separated - Values) and then easy export it to MS Excel or any other database or edit this file in you favorite text editor, and apply to mp3 tags or file names using ‘Load tags from file’ command.

To do this you need to:

1) Select tags type ID3v1 or ID3v2 in main form.

2) Select from menu ‘Tags’, ‘Save tags to file’.

3) Select tags and file information you want to export.

4) Choose exported file name and press ‘Save’.

Currently only CSF file types are supported.

To import tags from text file and apply to your mp3 files you need:

1) Select tags type ID3v1 or ID3v2 in main form.

2) Select from menu ‘Tags’, ‘Load tags from file’.

3) Choose file name and press ‘Read file’. Information from this file would be shown in ‘Data loaded from file:’.

4) Choose tags you want to Import and map column name from file to this tag.

5) ‘Preview Tags’ show changes in main window.

6) ‘Apply Selected Tags’ will change you mp3 file.


Renaming Files

For File Renaming select the files to edit as above. Click the tab labeled "Tags" near the top left of the screen to select the tag editing tab sheet. Use the "Select Tag" combo box to pick "File Name." You may then proceed with file renaming in exactly the same way as setting the ID3 tags as discussed above. Note that the special variables are available. If mask result would produce unacceptable for file name characters: : \ / ? * this characters would be removed from resulting filename.

In File Options you could specify maximum file name length in characters, if excided than it would be truncated of “SmartTrimed” if “Smart Trim” enabled.

NOTE: . (Dot) before extension is not counted. Joliet file system for CDs has 64 character including the extension  Mac user using any system earlier than OSX has a 32-character limit.

If you made a mistake you are able to "Undo file rename".


Playlist Generation

Using "File - Select Files" or drag-and-drop from Windows Explorer (anywhere onto the form), bring all the files for a book into the program. You're quickly presented with a list of your files, with their sizes and durations, and the total size and duration of the set of files.

Click "Generate -> Playlists" in the menu or F6

If you enabled multiple playlists than enter your playlist limits, in “Max size” per playlist (typically for Rio users) or in “Max Length” (duration) (typically for tape users).

Select an output path in the "Playlist name" and “Playlist location” fields. For multiple playlists “Playlist name” is the prefix; it will have a sequence number appended to it. For example, if you enter "book" your first playlist will be "book.m3u" if only one file to be generated. Or "book01.m3u", "book02.m3u"... for multiple playlists  depends on limit set.

To do another book, click "File -> Clear list" or F5

"Playlist name " is generated based on Mask for M3U Files. This could be changed in options. Default value is  $A - $B

“Playlist location” defaults to location of mp3 files. If you change it than relative path would be used in m3u file (The same way as WinAmp does)


NFO Generation

After setting the ID3 tags in the step above, click on the "NFO Generator" tab near the top left of the screen. The program uses the ID3 tag and other file information to make its best guess at what you'd want to say in an NFO file. Fill in the remaining blanks; change anything you like (other than the "encoded at" field which already reflects reality).

Click "Generate" - "NFO" (or hot key F7) to save the resulting file.

Created file would be show in internal text Editor and optionally External text Editor could be started.

Additional format Styles could be specified in options.

If you want custom or extended information in your NFO file then select Custom Template as NFO style and enter or select the name of template file.

Template file uses variables derived from information entered on NFO Generator screen and Set Tags variables for FileList creation.

Example template (NFOtemplate.txt and NFOtemplateStandard.txt) installed to Mp3BookHelper application directory. This is short extract from this file.

General Information

===================

 Title:                  <Title>

 Author:                 <Author>

 Read By:                <ReadBy><SkipEmpty>

 Copyright:              <PublicationDate><SkipEmpty>

 Audiobook Copyright:    <RecordingDate><SE>

 Genre:                  <Genre><SE>

 Publisher:              <Publisher><SE>

 Series Name:            <Series><SE>

 Position in Series:     <SeriesPosition><SE>

 Abridged:               <AbridgedYesNo>

File Information

================

 Number of MP3s:         <Mp3Files>

 Total Duration:         <Duration>

 Total MP3 Size:         <FilesSize> MB

<FileListID3v1><File> <FileSizeMB> <DurationHHMM> <EncBr> kbit/s <EncKHz> KHz

Book Description

================

<Wrap><Description>


SFV Generation and Tests
SFV Generation and SFV/PAR Tests

SFV (Simple File Verificator) files are used to ensure that files are not corrupt and not missing. These files contain CRC32 (Cyclic Redundancy Checksum) of files and file size in comments section.

PAR/P01/…/P?? (Parity Archive Volume Set) files are used for data recovery. Mp3BookHelper do not recover files in current version but uses this files in the same way as SFV for fast test for completeness and correct size of mp3 files. If you need to recover files use PAR clients http://parchive.sourceforge.net/

To create the Simple File Verify (SFV) Checksum files after you updated Tags and/or renamed files press F8 or select from menu ‘Generate’, ‘Checksum SFV’. If you change you mp3 files after SFV was created you will get warning message when you try to close program or clear file list.

If you get the files over Internet than it is a good idea to test if you got all files and they are not corrupted using ‘Files’ tab of main window.

‘SFV/PAR:’ would show SFV files from mp3 files directory. You could test your MP3 files against any of these files. Results would be shown in ‘Test result’ column.

PAR files and some SFV files have file size in comments section. Mp3BookHelper will use this information to quickly compare your mp3 files size with information available. ‘Size OK’, ‘File Truncated’ or ‘Extra data’ would be show base on this data.

If files have been renamed program could try guess and match you existing files against information in SFV. ‘Renamed’ would be show. Currently only spaces and punctuations removed from file names could be detected automatically.

‘Test’ will calculate CRC checksum and/or MD5 hash of your mp3 files and compare them with information in selected SFV and PAR files. Test result would be: Good = ‘CRC OK’ or Corrupted = ‘CRC Mismatch’.

Other tests results are:

‘Error’ – Error reading file;

‘File Missing’ – Mp3 file included in SFV/PAR file not found.

‘File Not Loaded’ – File exists but not loaded to Mp3BookHelper. Use ‘Load Remaining’ button to load it(them) to file list.

‘No CRC Data’ – Your mp3 file do not have corresponding SFV or PAR file.

‘CRC?’ – there are CRC or MD5 data for your file but you need to run ‘Test SFV’ to get results.

If you have more than one SFV or PAR file in directory test result will show number before any result. This number indicates which SFV or PAR file has been used for tests. If mp3 file present in two files then best match result would be show. Best is Good = ‘CRC OK’. Check and Uncheck PAR/SFV files to compare your files with selected files. No need to run ‘Test’ again MP3BookHelper remember files checksum in memory.

In some case Mp3BookHelper is able to find missing files even without SVF. Currently file names enumeration is used. For example is loaded files are abook_01-06.mp3, abook_02-06.mp3, abook_04-06.mp3, abook_05-06.mp3. Than it will show warning that file abook_03-05.mp3 is missing. It will not show warning for file abook_06-06.mp3

File filters ‘Loaded & Missing’ and ‘Missing only’ should be used to show missing files in ‘Files’ tab.

MP3BookHelper work under assumption that all files in one directory are related and belong to one book (Album).


Creation of parity archive (PAR) and SFV files
Creation of parity archive (PAR)

PAR/P01/…/P?? (Parity Archive Volume Set) files are used for data recovery. Mp3BookHelper has interface only for PAR v1 set creation. Currently recovery is not enabled in this program. If you need to recover files use PAR clients http://parchive.sourceforge.net/ . Mp3BookHelper offers you a simple interface for PAR file naming and has no intention to compete with general-purpose PAR clients FSRaid and SmartPAR.

To create the Parity Archive Volume Set after you updated Tags and/or renamed files press F9 or select from menu ‘Generate’, ‘Create PAR’. You would be able to select number of PXX volumes for recovery. For each lost or corrupted mp3 file you would need one PXX volume to be able to recover original file. Only mp3 files are included in set. If you have files from more than one directory loaded to program PAR would be created for each directory.

One PAR volume set could contain up to 255 files. To work around this limitation Mp3BookHelper would create 2 or more sets for each directory with more than 255 files equally dividing mp3 files between volumes.

Example is 280 files. 2 sets would be created 1st would have files from 1 to 140 2nd set files from 141 to 280. You would be able to select suffix for this sets it could be 001_140 for set 1 and 141_280 for set 2. Or it could be a set number.

Example for file naming:

B001-280 Author - Book.mp3

…

B280-280 Author - Book.mp3

B000-280 Author - Book.sfv

PAR/PXXs created base on <2B>$0_<Total> <Author> - <Book>_ mask for base par file name:

B000-280 Author - Book_001_140.par

B000-280 Author - Book_001_140.p01

B000-280 Author - Book_001_140.p02

B000-280 Author - Book_141_280.par

B000-280 Author - Book_141_280.p01

B000-280 Author - Book_141_280.p02

You could create PAR set immediately or delay it creation using Schedule button. Schedule would put PAR/SFV creation command to Task Queue.

If you change you mp3 files after PAR or SFV was created you will get warning message when you try to close program or clear file list.

Drop Down list for PAR and SFV name mask contains recently used masks plus the last mask used for mp3 file renaming where all counter variables (‘$i', '$I', ‘<Count>', '<Count1>', '$l', '$L', '<Count0>', '$k', '$K', '<Track#>') are replaced by place holder variable $0.


Hotkeys
Main window hotkeys

F3	Select Files
F4	Select Directory
F5	Clear file list
F2	Set all selected tags for all files
F6	Generate playlist(s)
F7	Generate NFO file
F8	Create SFV file
F9	Create PAR and/or SFV
Ctrl+F2	Copy all ID3 v2 tags to ID3 v1
Alt+F2	Copy all ID3 v1 tags to ID3 v2
Ctrl+F5	Remove all ID3 v1 tags from all files
Alt+F5	Remove all ID3 v2 tags from all files
Delete	Remove file from the list


Acknowledgments

MP3BookHelper is Open source software and is free.

If you found a bug in this program please report it using program website: http://mp3bookhelper.sourceforge.net/ or send E-mail to vlads@users.sourceforge.net

If you have ideas or suggestions for this program or want to contribute in any way please use website.

MP3BookHelper Originally Created by Tim Meneely

MP3BookHelper uses following libraries:

•	Audio Tools Library - programming tools for Borland Delphi 3,4,5,6 by Jurgen Faul http://jfaul.de/atl/

•	TregExpr, Regular Expressions for Delphi by Andrey V. Sorokin http://anso.da.ru/

•	MD5 Message-Digest implementation by Matthias Fichtner http://www.fichtner.net/delphi/md5/

•	TFolderTree Component by Elliott Shevin and Dennis Turov

•	Installation made using Inno Setup by Jordan Russell. And Martijn Laan http://www.jordanr.dhs.org/isinfo.php

•	Parity Archive Creation using Parchive for UNIX project  Willem Monsuwe http://sourceforge.net/projects/parchive/